package cn.z2huo.algorithm.sort.insert.straight;

/**
 * <p>直接插入排序算法
 *
 * @author z2huo
 */
@Deprecated
public class StraightInsertSort {

	public static void main(String[] args) {
		int[] array = {11,13,2,34,55,9,44,122,32,2,9};
//		int[] array = {1,2,3,4,5};
		int demo = 0;
		int flag = 0;
		int flag2 = 0;
		//从头开始遍历数组，将array[i+1]插入到从头开始的已排好序的队列中的正确的位置中去
		for(int i=0; i<array.length-1; i++) {
			//做出判断，交换位置
			for(int j=0; j<=i; j++) {
				//大于等于已排好序的队列中值时，不做处理
				if(array[i+1] >= array[j]) {	
					
				//小于已排好序的队列中的值时，将array[i+1]与该位置的值交换位置
				}else {
					demo = array[j];
					array[j] = array[i+1];
					array[i+1] = demo;
					flag2 ++;
				}
				flag ++;
			}
			for(int m=0; m<array.length; m++) {
				System.out.printf("%d ",array[m]);
			}
			System.out.println();
		}
		System.out.println("以下为最终答案！");
		System.out.println("进行了"+flag+"次比较！");
		System.out.println("进行了"+flag2+"次移动！");
		for(int m=0; m<array.length; m++) {
			System.out.printf("%d ",array[m]);
		}
	}
}
